package cn.iocoder.yudao.module.iot.gateway.protocol.tcp.config;

import cn.iocoder.yudao.module.iot.gateway.codec.IotDeviceMessageCodec;
import lombok.Data;

import static cn.iocoder.yudao.module.iot.gateway.protocol.tcp.router.IotTcpUpstreamHandler.AUTH_METHOD;

@Data
public class TcpProtocolConfig {
    /**
     * 是否开启
     */
    private Boolean enabled = true;
    /**
     * 服务器端口
     */
    private Integer port = 8091;
    /**
     * 心跳超时时间（毫秒）
     */
    private Long keepAliveTimeoutMs = 30000L;

    /**
     * 最大连接数
     */
    private Integer maxConnections = 1000;

    private String protocolType;
    private Boolean sslEnabled = false;
    private String sslKeyPath;
    private String sslCertPath;
    // 添加编解码器类配置
    private Class<? extends IotDeviceMessageCodec> codecClass;
    private String authMethod = AUTH_METHOD;
    // 其他特定于协议的配置项

}
